﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Portfolio.IViews.Common
{
    /// <summary>
    /// Klasa Data Source do przekazywania danych przez widok
    /// </summary>
    public class DataSourceContainer
    {
        private object _dataSource;
        private string _dataTextFieldName;
        private string _dataValueFieldName;
        private int? _dataSelectedValue;

        /// <summary>
        /// Konstruktor
        /// </summary>
        /// <param name="dataTextFieldName">Tekst</param>
        /// <param name="dataValueFieldName">Wartość</param>
        /// <param name="dataSource">Źródło danych</param>
        /// <param name="dataSelectedValue">Domyślna wartość</param>
        public DataSourceContainer(string dataTextFieldName, string dataValueFieldName, object dataSource, int? dataSelectedValue)
        {
            _dataSource = dataSource;
            _dataTextFieldName = dataTextFieldName;
            _dataValueFieldName = dataValueFieldName;
            _dataSelectedValue = dataSelectedValue;
        }

        /// <summary>
        /// Właściwość źródła danych
        /// </summary>
        public object DataSource
        {
            get { return _dataSource; }
            set { _dataSource = value; }
        }

        /// <summary>
        /// Właściwość Tekst
        /// </summary>
        public string DataTextFieldName
        {
            get { return _dataTextFieldName; }
            set { _dataTextFieldName = value; }
        }

        /// <summary>
        /// Właściwość wartość
        /// </summary>
        public string DataValueFieldName
        {
            get { return _dataValueFieldName; }
            set { _dataValueFieldName = value; }
        }

        /// <summary>
        /// Właściwość zaznaczonej wartości
        /// </summary>
        public int? DataSelectedValue
        {
            get { return _dataSelectedValue; }
            set { _dataSelectedValue = value; }
        }
    }
}
